Computer-readable non-transitory storage medium, information processing apparatus, information processing system, and information processing method

ABSTRACT

An exemplary system includes: an information processing unit; a storage unit which stores information processed by the information processing unit; a touch panel which is a touch input unit which accepts a touch input; and an acceleration sensor equivalent to a force detection unit which detects a force applied to an apparatus or the touch panel at a time of the touch input, and the information processing unit evaluates an input area of the touch input and performs predetermined information processing in accordance with the input area and an acceleration value which is a detection value of the force.

CROSS REFERENCE TO RELATED APPLICATION

This application is a continuation of U.S. patent application Ser. No.13/680,948 filed Nov. 19, 2012 which claims priority to Japanese PatentApplication No. 2011-287725, filed on Dec. 28, 2011, are incorporatedherein by reference.

FIELD

The technology shown here relates to a computer-readable non-transitorystorage medium, an information processing apparatus, an informationprocessing system, and an information processing method which performinformation processing in accordance with a user's operation.

BACKGROUND AND SUMMARY

Conventionally, there is an information processing apparatus with atouch panel which performs an operation by selecting a buttonrepresenting s character, a symbol, and the like displayed on a screenof a display in accordance with an input performed on the touch panel bythe user.

However, there is a problem that the conventional information processingapparatus simply uses various buttons or gesture inputs to realizevarious operations and cannot provide diversity to operations based onrespective touch inputs performed on the touch panel. That is, theconventional information processing apparatus cannot provide a userinterface which allows various operations.

Therefore, a first objective of the present technology is to provide anew user interface which allows various operations.

A second objective of the present technology is to provide a userinterface which allows more intuitive operations.

To achieve the above objectives, the present technology has thefollowing features.

An example of the present technology is a computer-readablenon-transitory storage medium having stored therein a program whichcauses a computer of an information processing apparatus including aforce detection unit which detects a force applied to the informationprocessing apparatus to function as an evaluation unit and aninformation processing unit. The evaluation unit obtains a touchposition from a touch input unit and evaluates an input area of a touchinput. The information processing unit performs predeterminedinformation processing in accordance with the input area and the forcedetected by the force detection unit.

Accordingly, various different operations can be performed in accordancewith the contact area which is an input area on the touch input unit andthe force applied to the apparatus and the like, and thereby a varietyof operations by the touch input can be performed and convenience of theinformation processing apparatus can be improved.

The information processing unit may perform the predeterminedinformation processing in accordance with the input area when the forceis detected by the force detection unit and the detected force.

Accordingly, various different operations can be performed based on bothof the contact area and the force applied to the apparatus and the likeat the same point in time, and thereby a more intuitive operation can beperformed.

The information processing unit may perform the predeterminedinformation processing based on both of the input area and the detectedforce.

Accordingly, the predetermined information processing is performed basedon both of the contact area and the force applied to the apparatus andthe like, and thereby a wider variety of operations can be performed.

The information processing unit may perform the predeterminedinformation processing based on the input area, the detected force, andthe touch position.

Accordingly, the operation can be performed based on the threeparameters representing the input area, the detected force, and thetouch position, and thereby a wider variety of operations can beperformed.

The force detection unit may be a movement sensor which detects amovement of the information processing apparatus and the informationprocessing unit may perform the predetermined information processing inaccordance with the input area and the detected movement.

Accordingly, a movement such as a vibration and the like of theinformation processing apparatus generated at a time of a touch inputcan be detected, and thus a force of the touch input can be indirectlydetected without detecting a pressure of the touch input.

The information processing unit may perform the predeterminedinformation processing in accordance with the input area, a magnitudeand a direction of the movement detected by the movement sensor.

Accordingly, various different operations can be performed in accordancewith the magnitude and the direction of the detected movement.

The force detection unit may be a pressure sensor which detects apressure applied to the touch input unit and the detected force may be amagnitude of the pressure detected by the pressure sensor.

Accordingly, the pressure at the time of the touch input can be detectedand thus the force of the touch input can be directly detected.

The information processing unit may perform the predeterminedinformation processing when the input area and the detected force exceeda predetermined size and a predetermined magnitude, respectively.

Accordingly, information processing which corresponds to an input valuecan be easily selected.

The information processing unit may perform the predeterminedinformation processing when the touch position is in a certain region.

Accordingly, a wider variety of operations based on the touch positioncan be performed.

The evaluation unit may evaluate the input area based on a number oftouches performed on the touch input unit.

Accordingly, a wider variety of operations based on the number oftouches can be performed.

The information processing apparatus may include a storage unit and thestorage unit may store a table of setting values defining informationprocesses which correspond to the respective setting values. Theinformation processing unit may search the table of setting values forat least one of a setting value which corresponds to the input area anda setting value which corresponds to a force detection valuerepresenting the detected force and perform information processing whichcorresponds to the corresponding setting value.

Accordingly, options of information processing can be easily increasedwithout deteriorating usability for the user.

The program may cause the computer of the information processingapparatus to further function as a display control unit which readsinformation from a storage unit and displays the information on adisplay. The information processing performed by the informationprocessing unit may be a process with regard to transformation of anobject displayed on the display, and at least one of a transformationrange and a degree of transformation of the object may be changed basedon at least one of the input area and the detected force.

Accordingly, a variety of transformation operations by the touch inputcan be performed with respect to the object.

The information processing unit may further exert a predetermined shapechange on the transformation of the object based on at least one of theinput area and the detected force.

Accordingly, the transformation operations by the touch inputaccompanied by a variety of shape changes can be performed with respectto the object.

The information processing performed by the information processing unitmay be a process with regard to an in-game effect and at least one of atarget range and a magnitude of the in-game effect may be changed basedon at least one of the input area and the detected force.

Accordingly, a variety of operations by the touch input can be performedwith respect to the in-game effect.

The program may cause the computer of the information processingapparatus to further function as a display control unit which readsinformation from a storage unit and displays the information on adisplay. The information processing performed by the informationprocessing unit may be a process with regard to image display of thedisplay and at least one of a number of display images to transit and atransition speed may be changed based on at least one of the input areaand the detected force.

Accordingly, a variety of operations by the touch input can be performedwith respect to the display images.

The information processing performed by the information processing unitmay be a process with regard to data reproduction, and at least one of askip time and a speed of the data reproduction may be changed based onat least one of the input area and the detected force.

Accordingly, a variety of operations by the touch input can be performedwith respect to the data reproduction.

According to the present technology, a user interface which allows avariety of operations can be provided.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a non-limiting example external view of an informationprocessing apparatus;

FIG. 2 is a non-limiting example block diagram illustrating an internalconfiguration of the information processing apparatus;

FIG. 3 is a non-limiting example diagram illustrating an operation ofthe information processing apparatus with a single finger;

FIG. 4 is a non-limiting example diagram illustrating an operation ofthe information processing apparatus with two fingers;

FIG. 5 is a non-limiting example diagram illustrating a transformationpattern of a cubical object;

FIG. 6 is a non-limiting example flow chart illustrating details of adisplay process;

FIG. 7 is a non-limiting example diagram illustrating a display contentof different sized objects;

FIG. 8 is a non-limiting example flow chart illustrating details of aselection process of the different sized objects;

FIG. 9 is a non-limiting example diagram illustrating a display contentof objects having different depth values; and

FIG. 10 is a non-limiting example flow chart illustrating details of aselection process of the objects having different depth values.

DETAILED DESCRIPTION OF NON-LIMITING EXAMPLE EMBODIMENTS First ExemplaryEmbodiment

(Structure of Information Processing Apparatus)

FIG. 1 is an external view of an information processing apparatusaccording to an exemplary embodiment of the present technology.

As shown in FIG. 1, an information processing apparatus 1 is a hand-heldinformation processing apparatus and includes a housing 1 a , a display30, a touch panel 40, and an operation unit 50.

The housing 1 a is of a size that can be held by one hand of a user. Thehousing la is provided with the display 30 and a front surface of thedisplay 30 is covered with the touch panel 40. The housing 1 a isfurther provided with the operation unit 50. Details of the display 30,the touch panel 40, and the operation unit 50 will be described below.The touch panel 40 may be provided at any suitable location other thanthe front surface of the display 30.

(Internal Configuration of Information Processing Apparatus)

FIG. 2 is a block diagram illustrating an internal configuration of theinformation processing apparatus according to the exemplary embodimentof the present technology.

As shown in FIG. 2, the information processing apparatus 1 includes aninformation processing unit 10, a storage unit 20, the display 30, thetouch panel 40, the operation unit 50, a wireless communication unit 60,a sound input/output unit 70, and an acceleration sensor 80.

The information processing unit 10 reads an information processingprogram stored in the storage unit 20 and executes the informationprocessing program, thereby performing information processing describedbelow. The information processing unit 10 includes a CPU (CentralProcessing Unit), for example.

The storage unit 20 stores the information processing program executedby the information processing unit 10, image data to be displayed on thedisplay 30, sound data to be outputted from the sound input/output unit70, information from the touch panel 40, the operation unit 50, thewireless communication unit 60, the sound input/output unit 70, and theacceleration sensor 80, and the like. The storage unit 20 includes a RAM(Random Access Memory) or a ROM (Read Only Memory), for example.

The display 30 displays an image generated by the information processingunit 10 executing the information processing program and an imagedownloaded from a web site on the internet via the wirelesscommunication unit 60. The display 30 includes an LCD (Liquid CrystalDisplay), for example.

The user of the information processing apparatus 1 brings his/herfinger, a pen, and the like into contact with the touch panel 40,thereby the touch panel 40 is caused to obtain information of a contactposition and a contact area at regular time intervals and output theinformation to the information processing unit 10. The touch panel 40includes an electrostatic capacitance type touch panel, for example. Thetouch panel 40 can simultaneously detect positions of a plurality ofpoints positioned on the touch panel 40 at regular intervals. When thefinger of the user is brought into contact with the touch panel 40,usually a contact region of a finger is wider enough than the regularinterval. Thus, the touch panel 40 simultaneously detects a plurality ofpositions, and outputs the plurality of positions to the informationprocessing unit 10. Because the touch panel 40 covers the display 30,positions on the touch panel 40 detected by the touch panel 40 arereferred to as positions on a screen of the display 30 for ease ofexplanation. The information processing unit 10 stores the detectedpositions temporarily in the storage unit 20.

As shown in FIG. 1, the touch panel 40 has a rectangle shape, and adirection parallel to one side of the rectangle is defined as an X-axialdirection while a direction parallel to a side adjoining the one side isdefined as a Y-axial direction. A contact position is defined by an Xcoordinate and a Y coordinate, for example. The X coordinate is obtainedby specifying a position having a maximum X value and a position havinga minimum X value among positions forming the contact region andobtaining a center position between these positions. The Y coordinate isobtained by specifying a position having a maximum Y value and aposition having a minimum Y value among the positions forming thecontact region and obtaining a center position of these positions.

A contact area is obtained by, for example: specifying the positionhaving the maximum X value and the position having the minimum X valueamong positions forming the contact region and defining a differencebetween the X values as a length of a short axis (or long axis);specifying the position having the maximum Y value and the positionhaving the minimum Y value among the positions forming the contactregion and defining a difference between the Y values as a length of along axis (or short axis); and obtaining an area of an ellipse usingthese lengths. As another example, the contact area may be evaluatedbased on a number of touches (e.g., a number of fingers, touch pens, andthe like which touch the touch panel 40) performed on the touch panel40. For example, the contact area is determined to be small inlater-described FIG. 3 because a single finger is in contact with thetouch panel 40, while the contact area is determined to be large inlater-described FIG. 4 because two fingers are in contact with the touchpanel 40.

The operation unit 50 obtains operation information in accordance withan operation performed by the user and outputs the operation informationto the information processing unit 10. The operation unit 50 includesoperation buttons which can be pressed down by the user, for example.

The wireless communication unit 60 transmits information from theinformation processing unit 10 to a server on the internet and anotherinformation processing apparatus and transmits information from theserver on the internet and the other information processing apparatus tothe information processing unit 10. The wireless communication unit 60includes a module having a function of connecting to a wireless LAN byusing a method based on, for example, IEEE802.11.b/g.

The sound input/output unit 70 outputs a sound represented by the sounddata read by the information processing unit 10 from the storage unit 20and outputs sound data representing a sound inputted from the outside ofthe information processing apparatus 1 to the information processingunit 10. The sound input/output unit 70 includes a microphone and aspeaker, for example. The acceleration sensor 80 detects accelerationsin three-axial directions (X-axis, Y-axis, and Z-axial directions) shownin FIG. 1 and outputs acceleration values representing the detectedaccelerations to the information processing unit 10.

(Outline of Display Process According to First Exemplary Embodiment)

In the following, an outline of a display process of a cubical objectdisplayed on the display 30 of the information processing apparatus 1will be described. The cubical object is displayed on the display 30 andtransformed based on a contact area obtained when the user's fingercontacts the touch panel 40 and a force applied to the informationprocessing apparatus 1 by the contact. The cubical object will bedescribed below. The display process according to the exemplaryembodiment is applicable also to an object such as a plane object otherthan the cubical object.

FIG. 3 is a diagram illustrating an operation of the informationprocessing apparatus with a single finger. FIG. 4 is a diagramillustrating an operation of the information processing apparatus withtwo fingers.

As shown in FIG. 3 and FIG. 4, there are a case in which a touch inputis performed by bringing a single finger 5 into contact with the touchpanel 40 and a case in which a touch input is performed by bringing twofingers 5, 6 into contact with the touch panel 40. The touch input withthe single finger and the touch input with the two fingers are differentfrom each other in that contact areas of respective contact regions 40 a, 40 b on the touch panel 40 are different. That is, the contact region40 a in FIG. 3 is a contact area corresponding to a tip of a singlefinger and the contact region 40 b in FIG. 4 is a contact areacorresponding to tips of two fingers which are twice the contact areacorresponding to the tip of the single finger. Accordingly, the numberof fingers used for the touch input can be detected based on the contactarea. It should be noted that, other than the number of fingers, whichof a fingertip, a finger pad, a touch pen (stylus), and the like is usedto perform a touch input on the touch panel 40 can be identified basedon the contact area.

Further, the information processing apparatus 1 includes theacceleration sensor 80 in the housing 1 a and detects a force applied tothe information processing apparatus 1 at a time of the touch inputbased on a magnitude of an acceleration detected by the accelerationsensor 80. When the user operates the information processing apparatus 1by a touch input, the user performs the touch input by pressing his/herfinger against the touch panel 40. However, because the user operatesthe information processing apparatus 1 while holding the housing 1 awith his/her hands, the housing 1 a slightly shakes when the finger ispressed against the touch panel 40. When the user presses his/her fingeragainst the touch panel 40 with an increased force, the housing 1 ashakes more greatly. That is, the acceleration sensor 80 is a movementdetection sensor which detects a movement of the information processingapparatus 1 (housing la), and the detected movement can be regarded asthe force applied to the information processing apparatus 1 at the timeof the touch input. The detected movement can also be regarded as avibration applied to the information processing apparatus 1 at the timeof the touch input. The acceleration sensor may be various types ofacceleration sensors, such as, for example, an acceleration sensor whichoutputs an electric signal proportional to a detected acceleration, anacceleration sensor which outputs a detected acceleration as amathematical value, and the like. Further, the acceleration sensor maybe a contact type mechanical acceleration sensor which outputs adetection signal as a switch is turned on when an applied force(acceleration) exceeds a predetermined magnitude.

As the movement detection sensor, a sensor such as a gyro sensor whichdetects an angular velocity and a magnetic sensor which detects adirection can be used. In addition, a function equivalent to that of themovement detection sensor can be realized by analyzing images which aresequentially captured by a camera and detecting differences among theimages. Further, a pressure sensor may be provided in the touch panel 40so that a pressure applied to the touch panel 40 by the touch input canbe directly detected and the detected pressure may be regarded as theforce applied to the information processing apparatus 1 at the time ofthe touch input. Accordingly, with a single operation of performing thetouch input to the touch panel 40, the user can obtain two types ofparameters representing the contact area and the force applied to theinformation processing apparatus 1.

Next, an exemplary process of transforming a cubical object displayed onthe display 30 based on a contact area obtained at a time of a touchinput and a force (or a vibration applied to the information processingapparatus 1) to the information processing apparatus 1 will bedescribed.

FIG. 5 is a diagram illustrating a transformation pattern of a cubicalobject displayed on the display.

In the exemplary embodiment, two types of ranges (hereinafter referredto as transformation ranges) of performing a transformation effect onthe cubical object based on whether the contact area is greater than orequal to a predetermined first threshold value are set. In addition, twotypes of depth/height (hereinafter referred to as degrees oftransformation) of the transformation effect performed on the cubicalobject based on whether the magnitude of the acceleration is greaterthan or equal to a predetermined second threshold value are set. Thatis, there are two levels of transformation ranges and two degrees oftransformation and thus there are typical four transformation modes ofthe cubical object.

In the exemplary embodiment, a coordinate system in a real space isassociated with a coordinate system in a virtual space, thereby a moreintuitive operation is realized. Specifically, a parameter representingan expanse on an X-Y plane in FIG. 3 and FIG. 4 which is a coordinateplane of the contact area is used as a transformation range. That is,the cubical object is transformed within a range corresponding to anarea on the touch panel 40 which is actually contacted by the user'sfinger. Meanwhile, a parameter representing a depth/height with respectto a Z-axial direction which is a pressing direction of a touchoperation in FIG. 3 and FIG. 4 is used as a degree of transformation.That is, the user can perform a transformation on the cubical objectwith an operational feeling as if the user actually presses the cubicalobject with his/her finger. Needless to say, the parameter may representan expanse on another plane and a depth in another axial direction.

As shown in FIG. 5, a transformation mode a illustrates a transformationwhen a weak touch input is performed with the single finger 5 as shownin in FIG. 3, that is, when the contact area is less than the firstthreshold value and the magnitude of the acceleration is less than thesecond threshold value. In the transformation a, the cubical object hasa shallow concave portion thereon in a narrow range. This transformationis accompanied by a transformed shape change associated with an image ofthe cubical object being hit by an object having a small apical surfacewith a weak force.

Similarly to the transformation mode a, a transformation mode billustrates a case of a touch input with the single finger 5. However,the transformation b illustrates a transformation when a strong touchinput is performed, that is, when the contact area is less than thefirst threshold value and the magnitude of the acceleration is greaterthan or equal to the second threshold value. In the transformation b,the cubical object has a deep and sharp concave portion thereon in anarrow range. This transformation is accompanied by a transformed shapechange associated with an image of the cubical object being hit by anobject having a small apical surface with a strong force.

A transformation mode c illustrates a transformation when a weak touchinput is performed with the two fingers 5, 6 as shown in FIG. 4, thatis, when the contact area is greater than or equal to the firstthreshold value and the magnitude of the acceleration is less than thesecond threshold value. In the transformation c, the cubical object hasa shallow concave portion thereon in a wide range. This transformationis accompanied by a transformed shape change associated with an image ofthe cubical object being hit by an object having a large apical surfacewith a weak force.

Similar to the transformation mode c, a transformation mode dillustrates a transformation in a case of a touch input with the twofingers 5, 6. However, the transformation mode d illustrates atransformation when a strong touch input is performed, that is, when thecontact area is greater than or equal to the first threshold value andthe magnitude of the acceleration is greater than or equal to the secondthreshold value. In the transformation mode d, the cubical object has adeep and sharp concave portion thereon in a wide range. Thistransformation accompanies a transformed shape change associated with animage of the cubical object being hit by an object having a large apicalsurface with a strong force. Needless to say, these presentation effectsare not indispensable. Only the transformation range and the degree oftransformation may be changed in accordance with the contact area andthe magnitude of the acceleration without changing the transformed shapein the transformation range.

Accordingly, the user can obtain two types of parameters representingthe contact area and the force applied to the information processingapparatus 1 by the single operation of performing the touch input to thetouch panel 40 and transform the target object in various manners basedon the parameters. There may be three types of parameters if a touchposition (input coordinate) on the touch panel 40 is taken into account.

(Detailed Display Process According to First Exemplary Embodiment)

Next, a display process according to the first exemplary embodiment willbe described in detail with reference to FIG. 6. FIG. 6 is a flow chartillustrating details of the display process according to the firstexemplary embodiment. The information processing unit 10 executes theinformation processing program stored in the storage unit 20, therebythe process shown in the flow chart of FIG. 6 is performed.

The user holds the housing 1 a of the information processing apparatus 1with one hand and performs a touch input for transforming a cubicalobject on the display 30 with the finger 5 or the fingers 5, 6 of theother hand. At this time, the information processing unit 10 obtains aplurality of positions on the screen of the display 30 from the touchpanel 40 (step S1), and determines whether any of the obtained pluralityof positions is in a certain region set in the cubical object (step S2).When a determination result is that all of the obtained plurality ofpositions are not in the certain region, the information processing unit10 ends the processing.

When the determination result is that any of the obtained plurality ofpositions is in the certain region, the information processing unit 10calculates a center contact position representing the center position ofa region on the touch panel 40 contacted by the finger based on theplurality of positions on the screen of the display 30 obtained from thetouch panel 40 (step S3), and calculates a contact area representing anarea of the region on the touch panel 40 contacted by the finger (stepS4). At this time, an area of a region, in which the region on the touchpanel 40 contacted by the finger and a region of a projection plane ofthe cubical object on the touch panel 40 overlap each other, may becalculated as the contact area.

The information processing unit 10 sets a transformation range of thecubical object based on the calculated contact area (step S5).Specifically, a first threshold value for setting the transformationrange is prestored in the storage unit 20 and the information processingunit 10 reads the first threshold value from the storage unit 20. Then,the information processing unit 10 compares the calculated contact areawith the first threshold value and sets the transformation range toeither a large range or a small range based on a comparison result. Forexample, when the calculated contact area is greater than or equal tothe first threshold value, the information processing unit 10 sets thetransformation range to a group of the mode a or b shown in FIG. 5.Meanwhile, when the calculated contact area is less than the firstthreshold value, the information processing unit 10 sets thetransformation range to a group of the mode c or d shown in FIG. 5.

The information processing unit 10 obtains an acceleration value fromthe acceleration sensor 80 (step S6), and sets a degree oftransformation for the cubical object based on the obtained accelerationvalue (step S7). Specifically, a second threshold value for setting thedegree of transformation is prestored in the storage unit 20 and theinformation processing unit 10 reads the second threshold value from thestorage unit 20. Then, the information processing unit 10 calculates amagnitude of the acceleration based on the obtained acceleration value,compares the calculated magnitude of the acceleration with the secondthreshold value, and sets the degree of transformation to either a greatdegree or a low degree based on a comparison result. For example, whenthe calculated magnitude of the acceleration is less than the secondthreshold value, the information processing unit 10 sets the degree oftransformation to the group of the mode a or c shown in FIG. 5.Meanwhile, when the calculated magnitude of the acceleration is greaterthan or equal to the second threshold value, the information processingunit 10 sets the degree of transformation to the group of the mode b ord shown in FIG. 5.

Based on the set transformation range and the degree of transformation,the information processing unit 10 performs a well-known polygontransformation process for exerting a transformation effect on thecubical object with the calculated center contact position as the center(step S8), and displays the cubical object after the transformationprocess on the display 30 (step S9).

As described above, in the exemplary embodiment, the cubical object canbe transformed in various manners based on the contact area obtained bythe touch input and the force applied to the information processingapparatus 1 at the time of the touch input. Variations of transformationof the object by the touch input can be increased.

In the exemplary embodiment, the contact area and the magnitude of theacceleration on the touch panel 40 are evaluated by comparing thecontact area and the magnitude of the acceleration with the respectivepredetermined threshold values and determined to be either large orsmall using two values. However, a transformation may be performedsuccessively based on the contact area and the magnitude of theacceleration as they are. In this case, a table defining setting valuescorresponding to ranges of the contact area and the magnitude of theacceleration is stored in the storage unit 20. A setting value whichcorresponds to a range in which the calculated contact area or themagnitude of the acceleration falls may be set as the transformationrange or the degree of transformation. Each setting value allows apredetermined range of values for the corresponding contact area or thecorresponding magnitude of the acceleration. Accordingly, differenceswhich are fluctuation components of the contact area and the magnitudeof the acceleration which occur among each of touch inputs are absorbed,and thereby consistent usability can be provided to the user. The sameis true to detection values of the contact area and the acceleration.Therefore, by performing a moving averaging process on the detectionvalues, fluctuation components of the detection values generated from aslight movement of a finger and a slight movement of a hand holding thehousing 1 a each time a touch input is performed can be absorbed.

In the exemplary embodiment, in step S7, setting is performed based onlyon the magnitude of the acceleration generated at the time of the touchinput without considering an axial direction of the acceleration. Agreat acceleration is considered to be generated in the Z-axialdirection in FIG. 3 and FIG. 4 at the time of the touch input.Therefore, among components of the acceleration detected by theacceleration sensor 80, only a component of the Z-axial direction whichis a direction orthogonal to a touch surface of the touch panel 40 maybe used. Needless to say, a magnitude of the force applied to thehousing 1 a may be evaluated by taking all of the components includingX-axis and Y-axis components. Further, because the acceleration sensor80 constantly outputs detection values which include a gravityacceleration component, the degree of transformation may be set based ona degree of change in the acceleration obtained by performing a firstderivation on the detection values and removing the gravity accelerationcomponent.

In the exemplary embodiment, the cubical object is transformed. However,an in-game effect may be performed on an object in a game. For example,when a contact area is small and a force applied to the informationprocessing apparatus 1 is large, an in-game effect as if hitting with afist is performed. When the contact area is small and the force appliedto the information processing apparatus 1 is small, an in-game effect asif poking with a fingertip is performed. When the contact area is largeand the force applied to the information processing apparatus 1 islarge, an in-game effect as if slapping with a palm is performed. Whenthe contact area is large and the force applied to the informationprocessing apparatus 1 is small, an in-game effect as if stroking with apalm may be performed. Further, for example, these effects can also beapplied to an attack effect in a role-playing game, an action game, andthe like. In this case, a selection range of a target to perform aneffect, that is, an attack target is set in accordance with a contactarea, and a magnitude of the attack effect is set in accordance with aforce applied to the information processing apparatus 1. Specifically,for example, when the contact area is small and the force applied to theinformation processing apparatus 1 is large, a strong attack isperformed on a single enemy. When the contact area is small and theforce applied to the information processing apparatus 1 is small, a weakattack is performed on the single enemy. When the contact area is largeand the force applied to the information processing apparatus 1 islarge, a strong attack is performed on all of or a plurality of enemies.When the contact area is large and the force applied to the informationprocessing apparatus 1 is small, a weak attack is performed on all of ora plurality of the enemies. Further, an in-game effect and a target ofthe in-game effect may be selected in accordance with a touch position.For example, when a part of the touch panel 40 on which an enemy isdisplayed is touched, an attack magic may be performed on the enemy.Meanwhile, when a part of the touch panel 40 on which a friend isdisplayed is touched, a recovering magic or a defense magic may beperformed on the friend.

In the exemplary embodiment, the range and the magnitude of the in-gameeffect are set separately in accordance with the contact area and theacceleration value, respectively. In another exemplary embodiment,information processing with regard to an output may be performed basedon both of an input area of a touch input and a force detected by aforce detection unit. For example, in a game aimed at hitting a ballfurther in a virtual space, an input area to the touch panel 40 isconverted into a first parameter value, an acceleration detected by theforce detection unit is converted into a second parameter value, and thefirst parameter value and the second parameter value are added. Thegreater a value obtained by adding the parameter values is, the furtherthe ball may be hit.

In the exemplary embodiment, a transformation effect is exerted on anobject in an application such as a game. However, the transformationeffect is applicable also to an operation input in an application forimage viewing, moving image playback, and the like. In the following,the operation input in the application for image viewing, moving imageplayback and the like will be described in detail. In the applicationfor image viewing, moving image playback, and the like, an image, amoving image, and the like stored in the storage unit 20 are read anddisplayed on the display 30. The image, the moving image, and the likeare operated based on a contact area and a force applied to theinformation processing apparatus 1 obtained by a touch input. Details ofa display process according to this modification is generally the sameas the display process of the flow chart shown in FIG. 6, and thusdescription thereof will be made with reference to FIGS. 3, 4, and 6 inthe same manner.

The user holds the housing 1 a of the information processing apparatus 1with one hand and performs a touch input for performing an operation onan image and the like on the display 30 with the finger 5 or the fingers5, 6 of the other hand. At this time, the information processing unit 10obtains a plurality of positions on the screen of the display 30 fromthe touch panel 40 (step S1), and determines whether any of the obtainedplurality of positions is in a certain region set in an operation buttonof the application (step S2). When a determination result is that all ofthe obtained plurality of positions are not in the certain region, theinformation processing unit 10 ends the processing.

When the determination result is that any of the obtained plurality ofpositions is in the certain region, the information processing unit 10calculates a center contact position representing the center position ofa region on the touch panel 40 contacted by the finger based on theplurality of positions on the screen of the display 30 obtained from thetouch panel 40 (step S3), and calculates a contact area representing anarea of the region on the touch panel 40 contacted by the finger (stepS4).

The information processing unit 10 sets a range of an amount ofoperation to be performed on a target such as the image and the likebased on the calculated contact area (step S5). The amount of operationcorresponds to an operation content assigned to a correspondingoperation button.

The information processing unit 10 obtains an acceleration value fromthe acceleration sensor 80 (step S6), and sets a magnitude of an effectto be exerted by an operation performed on the target such as the imageand the like based on the obtained acceleration value (step S7).

The information processing unit 10 performs an operation process on theimage and the like based on the thus set range of the amount ofoperation and the magnitude of the operation effect (step S8), andcauses the display 30 to display thereon a series of operationsperformed on the image and the like and results of the operations (stepS9).

In the above described display process, step S3 of obtaining the centercontact position is not particularly necessary. However, when anotheroperation button region and the like is closely provided, theinformation processing unit 10 may determine which operation button ispressed based on the center contact position.

As a specific operation example in the above described application, forexample, in the image viewing application, a number of images to transitin a slide show which sequentially displays display images is set inaccordance with a contact area and a transition speed of the displayimages is set in accordance with a magnitude of a force applied to theinformation processing apparatus 1 at a time of a touch input.Specifically, for example, when the contact area is small and the forceapplied to the information processing apparatus 1 is large, the numberof images to transit is low and the transition speed is high. When thecontact area is small and the force applied to the informationprocessing apparatus 1 is small, the number of images to transit is lowand the transition speed is low. When the contact area is large and theforce applied to the information processing apparatus 1 is large, thenumber of images to transit is high and the transition speed is high.When the contact area is large and the force applied to the informationprocessing apparatus 1 is small, the number of images to transit is highand the transition speed is low.

In an electronic book, a number of pages (text images) of the electronicbook to be turned is set in accordance with a contact area and a pageturning speed is set in accordance with a magnitude of a force appliedto the information processing apparatus 1 at a time of a touch input.Specifically, for example, when the contact area is small and the forceapplied to the information processing apparatus 1 is large, the numberof pages to be turned is low and the turning speed is high. When thecontact area is small and the force applied to the informationprocessing apparatus 1 is small, the number of pages to be turned is lowand the turning speed is low. When the contact area is large and theforce applied to the information processing apparatus 1 is large, thenumber of pages to be turned is high and the turning speed is high. Whenthe contact area is large and the force applied to the informationprocessing apparatus 1 is small, the number of pages to be turned ishigh and the turning speed is low.

In a video playback software and a music playback software, a skip time(number of frames) of moving image and music data to be reproduced isset in accordance with a contact area, and a reproduction speed of themoving image and music data is set in accordance with a magnitude of aforce applied to the information processing apparatus 1 at a time of atouch input. Specifically, for example, when the contact area is smalland the force applied to the information processing apparatus 1 islarge, the skip time is reduced and playback is skipped for a period oftime equivalent to the reduced time. When the contact area is small andthe force applied to the information processing apparatus 1 is small,the skip time is reduced and fast-forward is performed. When the contactarea is large and the force applied to the information processingapparatus 1 is large, the skip time is increased and playback is skippedfor a period of time equivalent to the increased time. When the contactarea is large and the force applied to the information processingapparatus 1 is small, the skip time is increased and the fast-forward isperformed.

Further, a specific operation may be performed when both of the contactarea and the force applied to the information processing apparatus 1satisfy respective predetermined conditions. For example, in the case ofthe electronic book, when a zoom-in (enlarged display) is performed by aso-called tap operation and both of a detection value of the contactarea and a detection value of the force at a time of the tap operationare greater than or equal to respective predetermined threshold values,a zoom out (reduced display) which is an operation opposite to a normaltap operation is performed. This is applicable also to a slide operationand a flick operation other than the tap operation. Both of the contactarea and the force applied to the information processing apparatus 1 arethus used as input conditions of the touch operation, thereby variationsof the touch operation can be increased. In addition, an operationcontent can be changed in accordance with whether a touch position is ina certain region. For example, the fast-forward may be performed whenthe user touches the right side of the touch panel 40 and a fast-rewindmay be performed when the user touches the left side of the touch panel40.

Further, the operation content may be changed based on a direction of anacceleration detected by the acceleration sensor 80. For example, theoperation content may be changed to a display in reverse order, thefast-rewind, and the like, as appropriate, in accordance with respectiveapplications based on an acceleration direction (−Z direction) in adepth direction generated at a time of a normal touch input and anacceleration direction (+Z direction) in a forward direction generatedat a time of moving the housing 1 a to bring the touch panel 40 intocontact with a finger. In order to detect the acceleration direction inthe +Z direction, acceleration values detected before a touch isdetected are sequentially stored, a moving averaging process isperformed on an acceleration value and an acceleration directionimmediately prior to the touch detection, and resultant values may beused.

In an operation of an application having a special function as describedabove, operation parameters for changing an operation content may beassociated with a contact area and a magnitude of an acceleration inadvance and set as unique values for the application. However, whenperforming the above described operation in a software such as an OS(operation software) of the information processing apparatus 1 whichprovides basic functions of the information processing apparatus 1, atable of operations or a database for associating the contact area andthe magnitude of the acceleration with the operation parameters may bestored in the storage unit 20 for each software to be executed or forcommon use. Then, a predetermined operation command may be executed byusing a variable of the operation command corresponding to the contactarea and the magnitude of the acceleration detected at a time of a touchinput.

Second Exemplary Embodiment

Next, a second exemplary embodiment will be described. A structure andan internal configuration of an information processing apparatusaccording to the second exemplary embodiment are the same as those ofthe first exemplary embodiment, and thus description thereof will beomitted.

Conventionally, a button selection operation and the like is identifiedby detecting a center position of a range on an operation screencontacted by a user's finger, a pen, or the like and determining onwhich button or selection region the center position is. However, inrecent years, information terminals have become smaller and many buttonsand selection regions are provided on a small display screen in manycases. In such a case, if an operation content is identified based onlyon the center position of the contact range, an erroneous pressing mayoccur because of a slight displacement, which results in impeding asecure operation. In the exemplary embodiment, a user operation isrecognized based on a size of a contact area and the like in addition tothe center position of the contact range, thereby eliminating the aboveproblem.

In the following, while taking as an example a case where an applicationsoftware such as a game and the like is executed on the informationprocessing apparatus 1 according to the exemplary embodiment, a specificuse and a process flow of the information processing apparatus 1 will bedescribed with reference to FIG. 7 and FIG. 8. FIG. 7 shows, in a casewhere the user selects any of a plurality of objects displayed on thedisplay screen 30 by a touch operation, an enlarged display of two ofthe displayed plurality of objects (an outer frame in FIG. 7 representsa range of a part of the display screen 30). Here, an object 101 isdisplayed so as to be larger than an object 102. When the user touches aregion (region 101) in which the object 101 is displayed, theinformation processing unit 10 determines that the object 101 isselected. Meanwhile, when the user touches a region (region 102) inwhich the object 102 is displayed, the information processing unit 10determines that the object 102 is selected.

As shown in FIG. 7, when the plurality of objects 101, 102 which areselection targets are close to each other on the display screen, it isassumed that there may be a case where even though the user desires toselect the object 101 or the object 102, a center position of a rangecontacted by the user is in a region (region 103) between the objectsand shifted slightly from each of the regions 101, 102. In this case,which object is selected is determined in accordance with a size of anarea contacted by the user. Specifically, when the contact area islarge, the information processing unit 10 determines that the object 101which is displayed so as to be larger is selected. Meanwhile, when thecontact area is small, the information processing unit 10 determinesthat the object 102 which is displayed so as to be smaller is selected.The size of the contact area is determined by reading the largest one ofcontact areas detected during a period of time from a contact start(touch on) to a contact end (touch off), for example.

Generally, the larger an object is, the larger a determination region ofthe object becomes. In the exemplary embodiment, a determination regionof each object is defined as being the same in position and size as adisplay region of the object. Accordingly, the object 101 has adetermination region larger than a determination region of the object102. Consequently, due to the user's psychology, the contact area islikely to be large when the object 101 is selected and the contact areais likely to be small when the object 102 is selected. By thus applyingthe user's psychology to determination of selection, an operation whichthe user desires can easily be realized.

Next, a process of determining a selected object based on a contact areawill be described in detail by following the process flow of FIG. 8. Theuser performs a touch input on the touch panel 40 using a finger or atouch pen while holding the information processing apparatus 1. Theinformation processing unit 10 positions a plurality of objects whichare selection targets in respective predetermined regions (step S11),and determines a certain region based on a positional relation of theplurality of objects (step S12). A region, between two objects, in whicha region in which one object is displayed and a region in which theother object is displayed overlap each other either in a range on an Xcoordinate or in a range on a Y coordinate, is determined as the certainregion (region 103 in FIG. 7). A size and a shape of the certain regionmay not be precise and the certain region may be determined based on anymethod other than the above method.

Next, the information processing unit 10 detects a coordinate group of aposition on the touch panel 40 on which a touch is performed (step S13),calculates to obtain position coordinates which are the center of thecoordinate group (step S14), and determines whether the center of thetouch position is in the certain region (step S15). Then, when adetermination result is that the center of the touch position is not inthe certain region (NO in step S15), the information processing unit 10determines whether the center of the touch position is in a region on anobject (step S20). When a determination result is that the center of thetouch position is in the region on the object (YES in step S20), theinformation processing unit 10 determines that the object is selected(step S21) and performs a display based on the selection on the display30 (step S22). Meanwhile, when the determination result is that thecenter of the touch position is not in the region on the object (NO instep S20), the information processing unit 10 determines that aselection operation is not performed and performs a display for when noselection operation is performed on the display 30 (step S22).

When the determination result is that the center of the touch positionis in the certain region (YES in step S15), the information processingunit 10 calculates an area on the touch panel 40 contacted by the userbased on the coordinate group of the contact position (step S16). Theinformation processing unit 10 determines whether the contact area islarger than a predetermined threshold value (S17). When a determinationresult is that the contact area is larger than the predeterminedthreshold value (YES in step S17), the information processing unit 10determines that the object having a large area on the display screen isselected (step S18) and performs a display based on the selection result(step S22). When the determination result is that the contact area isnot larger than the predetermined threshold value (NO in step S17), theinformation processing unit 10 determines that the object having a smallarea on the display screen is selected (step S19) and performs a displaybased on the selection result (step S22). The threshold value may beuniformly defined or may be defined differently for each object.

According to the exemplary embodiment, even when the user touches aregion between a plurality of objects, which of the plurality of objectsis selected can easily be determined.

In the following, while taking as another example a case where anapplication software such as a game and the like is executed on theinformation processing apparatus 1 according to the exemplaryembodiment, a specific use and a process flow of the informationprocessing apparatus 1 will be described with reference to FIG. 9 andFIG. 10. FIG. 9 shows, in a case where the user selects any of aplurality of objects displayed on the display 30 by a touch operation,an enlarged display of two objects on the display screen. An object 104and an object 105 are displayed so as to overlap each other in a region106. When the user touches a region (region 104) in which the object 104is displayed, the information processing unit 10 determines that theobject 104 is selected. Meanwhile, when the user touches a region(region 105) in which the object 105 is displayed, the informationprocessing unit 10 determines that the object 105 is selected.

As shown in FIG. 9, when the plurality of objects 104, 105 which areselection targets overlap each other on the display screen, it isassumed that there may be a case where even though the user desires toselect the object 104 or the object 105, a center position of a rangecontacted by the user is in the region (region 106) in which the displayregions of the regions 104, 105 overlap each other. In this case, theinformation processing unit 10 cannot determine which object the userintends to select based only on the center position of the contactrange. In the exemplary embodiment, which object is selected isevaluated in accordance with a size of an area contacted by the user.Specifically, when the contact area is large, the information processingunit 10 determines that the object 105 which is displayed so as to befarther from the user in the depth direction is selected. Meanwhile,when the contact area is small, the information processing unit 10determines that the object 104 which is displayed so as to be closer tothe user in the depth direction is selected. The size of the contactarea is determined by reading the largest one of contact areas detectedduring a period of time from a contact start (touch on) to a contact end(touch off), for example.

When the user desires to select an object which is displayed so as to befarther from the user in the depth direction, it is assumed that theuser would press the touch panel 40 relatively hard. As a result, acontact area becomes large. Meanwhile, when the user desires to selectan object which is displayed so as to be closer to the user in the depthdirection, it is assumed that the user would contact the touch panel 40relatively softly. As a result, a contact area becomes small. By thusapplying the user's psychology to determination of selection, anoperation which the user desires can easily be realized.

Next, a process of determining a selected object based on a contact areawill be described in detail by following the process flow of FIG. 10.The user performs a touch input on the touch panel 40 using a finger ora touch pen while holding the information processing apparatus 1. Theinformation processing unit 10 positions two objects which are selectiontargets and a virtual camera which captures the two objects in a virtualspace (step S31).

Next, the information processing unit 10 detects a coordinate group of aposition on the touch panel 40 on which a touch is performed (step S32)and calculates to obtain position coordinates which are the center ofthe coordinate group (step S33). Further, the information processingunit 10 emits a ray in the virtual space based on the center of touchposition and determines whether the ray contacts a plurality of objects(step S34). When a determination result is that the ray contacts twoobjects (YES in step S34), the information processing unit 10 proceedsthe processing to step S35. At this time, the information processingunit 10 stores an order in which the ray contacts the two objects andunderstands an anteroposterior relationship of the two objects.Meanwhile, when the determination result is that the ray contacts onlyone object or does not contact any object (NO in step S34), theinformation processing unit 10 proceeds the processing to step S39.

When the ray contacts only one object or does not contact any object (NOin step S34), the information processing unit 10 determines whether theray contacts only one object (step S39). When a determination result isthat the ray contacts only one object (YES in step S39), the informationprocessing unit 10 determines that the object contacted by the ray isselected (step S40) and causes the display 30 to display thereon animage obtained by the virtual camera capturing the virtual space (stepS41). Meanwhile, when the determination result is that the ray does notcontact any object (NO in step S39), the information processing unit 10proceeds the processing to step S41.

When the determination is that the ray contacts two objects (YES in stepS34), the information processing unit 10 calculates an area on the touchpanel 40 contacted by the user based on the coordinate group of thecontact position (step S35). Next, the information processing unit 10determines whether the contact area is larger than a predeterminedthreshold value (step S36). When a determination result is that thecontact area is larger than the predetermined threshold value (YES instep S36), the information processing unit 10 determines that an objectwhich is displayed so as to be farther from the user in the depthdirection is selected (step S37), and proceeds the processing to stepS41. Meanwhile, when the determination result is that the contact areais not larger than the predetermined threshold value (NO in step S36),the information processing unit 10 determines that an object which isdisplayed so as to be closer to the user in the depth direction isselected (step S38) and proceeds the processing to step S41. Thethreshold value may be uniformly defined or may be defined differentlyfor each object. The anteroposterior relationship (closer to the user orfurther from the user) between the two objects is determined by storingthe order in which the ray contacts the two objects. Further, also in acase of three or more objects, determination of selection based on acontact area can be performed.

According to the exemplary embodiment, even when the user touches aregion in which a plurality of objects overlap one another, which of theplurality of objects is selected can easily be determined.

In the exemplary embodiment, when the plurality of objects overlap oneanother when seen from the virtual camera in the virtual space, thecontact area is used for determination of selection of the objects. Inanother exemplary embodiment, also when a plurality of objects aredisplayed so as to overlap one another in a planar space (a case where aplurality of objects are positioned on the same plane and only an objecthaving the highest display priority is displayed in a region in whichthe objects overlap one another, for example), similarly, contact areasmay be associated with display priorities (visual anteroposteriorrelationship of the objects).

The display 30 in the exemplary embodiment may be a parallax barriertype or a lenticular lens type stereoscopic display screen. This enablesthe user to perform a more intuitive operation and the like on an objectwith a sense of depth which is displayed on a stereoscopic displayscreen.

In the exemplary embodiment, the contact area is associated with thesize and the depth value of the object. In another exemplary embodiment,the contact area may be associated with anything (e.g., color, shape,up-down, left-right, and the like) with regard to the object.Accordingly, a wider variety of operations can be provided.

In the exemplary embodiment, the contact area is associated with thesize and the depth value of the object. In another exemplary embodiment,the contact area may be used as depth designation information in thevirtual space. For example, the contact area can be used as information,with respect to an object, for such as moving the object in the depthdirection, transforming the object and designating a degree of depth.Accordingly, a wider variety of operations can be provided.

In the exemplary embodiment, the contact area is associated with thesize and the depth value of the object. In another exemplary embodiment,instead of the contact area or in combination with the contact area,which finger such as a thumb, an index finger, and the like contacts thetouch panel 40 may be evaluated and a determination result may bereflected on determination of selection. In this case, an instruction asto which finger is used for selecting an object may be given to the user(or from the user) each time or which finger is used may be determinedbased on the contact area and the contact range. Accordingly, a widervariety of operations can be provided.

In the exemplary embodiment, the contact area is associated with thesize and the depth value of the object and used for determination ofselection of the object. In another exemplary embodiment, theassociation may be used for another predetermined operation and displaychange instead of determination of object selection. Accordingly, awider variety of operations can be provided.

In the exemplary embodiment, the contact area is associated with thesize and the depth value of the object. In another exemplary embodiment,instead of the contact area or in combination with the contact area,determination of object selection may be based on a force detected at atime of a touch. In this case, various sensors such as an accelerationsensor, a gyro sensor, a pressure sensor, and the like can be adoptedfor detection of the force at the time of the touch. Accordingly, moreintuitive and a wider variety of operations can be provided.

In the exemplary embodiment, the contact area is associated with thesize and the depth value of the object. In another exemplary embodiment,instead of the contact area or in combination with the contact area, thedetermination process may be performed based on a contact time.Accordingly, a wider variety of operations can be provided.

In the exemplary embodiment, when the plurality of objects are displayedso as to overlap one another in the anteroposterior direction, thelarger the contact area is, the greater the depth value of the objectwhich is determined to be selected is. In another exemplary embodiment,when a plurality of objects are displayed so as to overlap one anotherin an anteroposterior direction, the greater a contact area is, thesmaller a depth value of an object which is determined to be selectedmay be.

In the exemplary embodiment, the largest one of the contact areasdetected during the time period from the contact start (touch on) to thecontact end (touch off) is read. In another exemplary embodiment, anaverage value or an integrated value of the contact areas during thetime period may be read. Alternatively, instead of reading the contactareas during the time period, a maximum value or an average value ofcontact areas during a time period from a predetermined time periodprior to the touch off to the touch off. Accordingly, more accurateoperations can be provided.

Alternatively, the contact area may be detected at predetermined regularintervals and possible selection targets may be sequentially highlightedand displayed in accordance with the contact area. In this case, whenthe user performs a touch off, an object which is highlighted anddisplayed immediately prior to the touch off is determined to beselected. Accordingly, more intuitive operations can be provided.

A mode of a touch reflects a user's mannerisms and personality andtherefore the information processing unit 10 may learn each user'smannerisms when pressing the touch panel. The information processingunit 10 may learn each user's mannerisms naturally by accumulatingrelationship between a selection target and a touch region, or byrequesting the user to touch a predetermined region in advance.Accordingly, a wider variety of operations can be provided.

Alternatively, the selection target may be evaluated based also on thecontact time in addition to the size of the contact area. Specifically,when the contact time is great, an object which is displayed in a largearea may be determined to be selected. Accordingly, more intuitive and awider variety of operations can be provided.

Also in a case where there is not more than one object (when there isonly a single object) which is a selection target, determination as towhether the object is selected may be made in accordance with a contactposition and a size of a contact area. By using both of the contactposition and the contact area for determination of selection, anerroneous operation which occurs from an erroneous contact can beprevented.

As described above, the information processing program according to theexemplary embodiment is executed by the information processing unit 10which is a computer of the information processing apparatus 1 having thedisplay 30 and the touch panel 40 which is a position input unit, theprogram causing the computer to function as:

a display control unit which displays a plurality of selection targetsin a predetermined display mode on the display 30;

an evaluation unit which evaluates a contact area formed by a pluralityof input positions detected by the position input unit; and

a determination unit which determines which selection target is selectedbased at least on the contact area and a relation between one selectiontarget and another selection target in the display mode.

Accordingly, a selection operation when there are two or more selectiontargets can be performed more intuitively.

Further, in the exemplary embodiment, the determination unit selects aselection target having a size corresponding to a size of the contactarea from among the plurality of selection targets.

Accordingly, a selection operation on a selection target can beperformed more intuitively.

Further, in the exemplary embodiment, the determination unit selects aselection target at a position corresponding to a size of the contactarea from among the plurality of selection targets. In this case, theplurality of selection targets and the virtual camera may be positionedin the virtual space and a selection target at a position at a depthcorresponding to the size of the contact area may be selected from amongthe plurality of selection targets.

Accordingly, a selection operation on a selection target can beperformed more intuitively.

Further, in the exemplary embodiment,

the information processing program further causes the computer of theinformation processing apparatus to function as a contact positiondetection unit which detects a position on the contact detection unitcontacted by the user, and

the determination unit determines which selection target is selectedwhen the contact position detected by the contact position detectionunit is in a region between the plurality of objects or in a region(certain region) in which the plurality of objects overlap one another.

Accordingly, a selection operation when there are two or more selectiontargets can be performed more accurately.

What is claimed is:
 1. A computer-readable non-transitory storage mediumhaving stored therein a program which causes a computer of aninformation processing apparatus including a force detection unit whichdetects a force applied to the information processing apparatus tofunction as: an evaluation unit which obtains a touch position from atouch input unit and evaluates an input area of a touch input; and aninformation processing unit which performs one type of predeterminedinformation processing including transforming a displayed object basedon a size of the input area and the force detected by the forcedetection unit, wherein in the one type of predetermined informationprocessing, a first parameter, which changes in accordance with thedetected force controls a degree of change in a first dimension of the_displayed object, and a second parameter, which changes in accordancewith the size of the evaluated input area controls a degree of change ina plane in at least a second dimension of the displayed object, arecontrolled temporally parallel to each other.
 2. The computer-readablenon-transitory storage medium according to claim 1, wherein theinformation processing unit performs the predetermined informationprocessing based on the size of the input area when the force isdetected by the force detection unit and the detected force.
 3. Thecomputer-readable non-transitory storage medium according to claim 1,wherein the information processing unit performs the predeterminedinformation processing based on both of the size of the input area andthe detected force.
 4. The computer-readable non-transitory storagemedium according to claim 1, wherein the information processing unitperforms the predetermined information processing based on the size ofthe input area, the detected force, and the touch position.
 5. Thecomputer-readable non-transitory storage medium according to claim 1,wherein the force detection unit is a movement sensor which detects amovement of the information processing apparatus and the informationprocessing unit performs the predetermined information processing basedon the size of the input area and the detected movement.
 6. Thecomputer-readable non-transitory storage medium according to claim 5,wherein the information processing unit performs the predeterminedinformation processing based on the size of the input area, a magnitudeand a direction of the movement detected by the movement sensor.
 7. Thecomputer-readable non-transitory storage medium according to claim 1,wherein the force detection unit is a pressure sensor which detects apressure applied to the touch input unit and the detected force is amagnitude of the pressure detected by the pressure sensor.
 8. Thecomputer-readable non-transitory storage medium according to claim 1,wherein the information processing unit performs the predeterminedinformation processing when the size of the input area and the detectedforce exceed a predetermined size and a predetermined magnitude,respectively.
 9. The computer-readable non-transitory storage mediumaccording to claim 1, wherein the information processing unit performsthe predetermined information processing when the touch position is in acertain predefined region.
 10. The computer-readable non-transitorystorage medium according to claim 1, wherein the evaluation unitevaluates the size of the input area based on a number of touchesperformed on the touch input unit.
 11. The computer-readablenon-transitory storage medium according to claim 1, wherein theinformation processing apparatus includes a storage unit and the storageunit stores a table of setting values defining information processeswhich correspond to the respective setting values, and the informationprocessing unit searches the table of setting values for at least one ofa setting value which corresponds to the input area and a setting valuewhich corresponds to a force detection value representing the detectedforce and performs information processing which corresponds to thecorresponding setting value.
 12. The computer-readable non-transitorystorage medium according to claim 1, wherein the program causes thecomputer of the information processing apparatus to further function asa display control unit which reads information from a storage unit anddisplays the information on a display, and the information processingperformed by the information processing unit is a process with regard totransformation of an object displayed on the display, and at least oneof a transformation range and a degree of transformation of the objectis changed based on at least one of the size of the input area and thedetected force.
 13. The computer-readable non-transitory storage mediumaccording to claim 12, wherein the information processing unit furtherexerts a predetermined shape change on the transformation of the objectbased on at least one of the size of the input area and the detectedforce.
 14. The computer-readable non-transitory storage medium accordingto claim 1, wherein the information processing performed by theinformation processing unit is a process with regard to an in-gameeffect and at least one of a target range and a magnitude of the in-gameeffect is changed based on at least one of the size of the input areaand the detected force.
 15. The computer-readable non-transitory storagemedium according to claim 1, wherein the program causes the computer ofthe information processing apparatus to further function as a displaycontrol unit which reads information from a storage unit and displaysthe information on a display, and the information processing performedby the information processing unit is a process with regard to imagedisplay of the display, and at least one of a number of display imagesto transit and a transition speed is changed based on at least one ofthe size of the input area and the detected force.
 16. Thecomputer-readable non-transitory storage medium according to claim 1,wherein the information processing performed by the informationprocessing unit is a process with regard to data reproduction, and atleast one of a skip time and a speed of the data reproduction arechanged based on at least one of the size of the input area and thedetected force.
 17. An information processing method comprising thesteps of: obtaining a touch position from a touch input unit andevaluating a size of an input area of a touch input; obtaining a forcedetection value from a force detection unit which detects a forceapplied to an information processing apparatus; and performing one typeof predetermined information processing including transforming adisplayed object based on a size of the input area and the forcedetected by the force detection unit, wherein in the one type ofpredetermined information processing, a first parameter, which changesin accordance with the detected force controls a degree of change in afirst dimension of the displayed object, and a second parameter, whichchanges in accordance with the size of the evaluated input area controlsa degree of change in a plane in at least a second dimension of thedisplayed object, are controlled temporally parallel to each other. 18.An information processing apparatus comprising: a display; aninformation processing unit; a storage unit which stores informationprocessed by the information processing unit; a touch input unit whichaccepts a touch input; and a force detection unit which detects a forceapplied to the information processing apparatus, wherein the informationprocessing unit evaluates a size of an input area of the touch input andperforms one type of predetermined information processing includingtransforming a displayed object based on a size of the input area andthe force detected by the force detection unit, wherein in the one typeof predetermined information processing, a first parameter, whichchanges in accordance with the detected force controls a degree ofchange in a first dimension of the displayed object, and a secondparameter, which changes in accordance with the size of the evaluatedinput area controls a degree of change in a plane in at least a seconddimension of the displayed object, are controlled temporally parallel toeach other.